#!/usr/bin/bash

# 设置最小文件大小（50MB）
min_size=50

# 使用find命令查找大于指定大小的文件
# -type f 只查找文件
# -size +${min_size}M 查找大于50MB的文件
# -exec 对每个找到的文件执行后面的命令
# du -h 显示文件大小（人类可读格式）
# {} 代表find找到的文件
# + 表示一次传递多个文件给exec命令


# 注意在不同环境下路径表示不一样，推荐使用gitbash执行脚本
# 提示用户输入路径
read -p "请输入路径: " path


echo "查找大于 ${min_size}MB 的文件："

if [ -e "$path" ]; then
    find $path -type f -size +${min_size}M -exec du -h {} + | while read size file
    do
        echo "$file ($size)"
    done

else 
    echo "路径不存在": $path
fi


# 另一种更简洁的显示方式（只显示路径）
# echo "查找大于 ${min_size}MB 的文件路径："
# find . -type f -size +${min_size}M -print

